#ifndef __D_Mover_H__
#define __D_Mover_H__
#include "IMoverManager.h"
#include "IMoverConnector.h"
#include "DMoverDef.h"



class DMover : public IMover
{
public:
	// == Life Cyle == //
	DMover(DWORD dwID);
	~DMover();

	bool							Init( mover::IMoverConnector* pMoverManager);
	void							UnInit();

	// == Schedule == //
	void							Tick();

	// == Manipulation == //
    bool							MoveUp();
	bool						    MoveDown();
	bool						    MoveLeft();
	bool						    MoveRight();
	bool						    MoveOneStep();

	//bool        SetMovePos(Position stPos);
	// == Get && Set == //
	DWORD							GetID(){return m_dwID;}

private:
	mover::IMoverConnector*				m_pConnector;

	DWORD								m_dwID;  

	mover::POSTION						m_stPos;
	ISpeed*								m_pSpeed;
};

#endif// IMoveActManager